package com.pozu.new_retail.utils;

import java.util.TreeMap;

import com.alibaba.fastjson.JSONObject;
import com.qcloud.QcloudApiModuleCenter;
import com.qcloud.Module.Sts;

public class COSSTS {
	
	public static JSONObject getSTS() {
		/* 如果是循环调用下面举例的接口，需要从此处开始你的循环语句。切记！ */
        TreeMap<String, Object> config = new TreeMap<String, Object>();
        config.put("SecretId", "AKIDMemjadcJ1Zw8B8snPqNq9JJNI2b34USJ");
        config.put("SecretKey", "tdCbyBC1f7OTM9lBPYVYUGE0azDG8oJj");

        /* 请求方法类型 POST、GET */
        config.put("RequestMethod", "GET");

        /* 区域参数，可选: gz: 广州; sh: 上海; hk: 香港; ca: 北美; 等。 */
        config.put("DefaultRegion", "gz");

        QcloudApiModuleCenter module = new QcloudApiModuleCenter(new Sts(),
                config);

        TreeMap<String, Object> params = new TreeMap<String, Object>();
        /* 将需要输入的参数都放入 params 里面，必选参数是必填的。 */
        /* DescribeInstances 接口的部分可选参数如下 */
        params.put("name", "beauty");
        String policy = "{\"statement\": [{\"action\": [\"name/cos:PutObject\"],\"effect\": \"allow\",\"resource\":[\"qcs::cos:ap-beijing:uid/1256261891:prefix//1256261891/beauty/*\"]}],\"version\": \"2.0\"}";
        params.put("policy", policy);

        /* 在这里指定所要用的签名算法，不指定默认为 HmacSHA1*/
        //params.put("SignatureMethod", "HmacSHA256");

        /* generateUrl 方法生成请求串, 可用于调试使用 */
        //System.out.println(module.generateUrl("GetFederationToken", params));
        String result = null;
        try {
            /* call 方法正式向指定的接口名发送请求，并把请求参数 params 传入，返回即是接口的请求结果。 */
            result = module.call("GetFederationToken", params);
            JSONObject json_result = JSONObject.parseObject(result);
            
            if (json_result.getInteger("code") == 0) {
				return json_result.getJSONObject("data");
			}
            
            return null;
        } catch (Exception e) {
            System.out.println("error..." + e.getMessage());
        }
        return null;
	}
}